/*
 * @author zhangchengwei
 * windows自动加载按钮的点击功能
 * */
/*window.onload = function(){
	$("#addTag").click(addNewTags);
	$(".showTagsMessage-close").click(addNewTags);
};
*/
/*
 * @author zhangchengwei
 * 显示系统全部标签对应的div
 * 返回所有标签的信息，大的分类和每个分类下的内容
 */
function addNewTags(){
	var showTagsNode = $("#showTags");
	if (showTagsNode.width() == "0"){
		//此处忽略查找所有标签大类型（type）,ajax查询数据库
		$.ajax({
			type: 'post',
			url: '../tag/ajaxSelectTagType',
			data: null,
			dateType: 'json',
			success: function(res){
				if(res.result == "0"){
					for (var i = 0; i < res.tagList.length; i++){
						var item = res.tagList[i];
						var tag = '<div class="showTagsMessage-body-tagTypeItems-item" id="'+item.tagId+'">'+item.tagName+'</div>';
						$(".showTagsMessage-body-tagTypeItems").append(tag);
					}
					//创建这些新生成TagType的点击事件
					$(".showTagsMessage-body-tagTypeItems-item").click(selectTagsByType);
				}
			}
		});
		$(".showTagsMessage-body-tagTypeItems").html('<div class="showTagsMessage-body-tagTypeItems-item-my">我的关注</div>');
		$(".showTagsMessage-body-tagTypeItems-item-my").click(selectMyAttentionTags);
		//显示默认数据，也就是我的全部关注
		selectMyAttentionTags();
		/*showTagsNode.animate({width:"360px"},"normal");*/
		showTagsNode.animate({width:"360px", '-moz-opacity': '1', 'opacity': '1', 'filter': 'alpha(opacity=100)'},"normal");
		$(".tagPrompt").fadeOut(2);
		showTagsNode.css("border", "2px solid #CDCDCD");
	} else {
		showTagsNode.animate({width:"0px", '-moz-opacity': '0.1', 'opacity': '0.1', 'filter': 'alpha(opacity=10)'},"normal");
		$(".tagPrompt").fadeIn(1600);
		showTagsNode.css("border-width", "0px");
	}
}

function selectMyAttentionTags(){
	$(".showTagsMessage-body-tagTypeItems-item-my").css("background", "#FFFFFF");
	$(".showTagsMessage-body-tagTypeItems-item").css("background", "#CDCDCD");
	$.ajax({
		url: '../tag/ajaxSelectFavorTagList',
		data: null,
		type: 'post',
		async: true,
		dataType: 'json',
		success: function(res) {
			if(res.result == 0){
				createHtmlNode(res.data, "取消关注");
			}
		}
	});
}

/*
 * @author zhangchengwei
 * 根据标签的type显示每个大的分类下的子标签
 * */
function selectTagsByType(){
	$(".showTagsMessage-body-tagTypeItems-item").css("background", "#CDCDCD");
	$(".showTagsMessage-body-tagTypeItems-item-my").css("background", "#CDCDCD");
	this.style.background = "#FFFFFF";
	//var tagName = this.innerHTML;
	//改进根据parentId查询
	var tagId = this.getAttribute("id");
	//根据大的分类查询数据库中每个分类下的标签
	$.ajax({
		type: 'post',
		url: '../tag/ajaxSelectOneTypeTags',
		/*data: {"typeName" : typeName},*/
		data: {"tagId": tagId},
		dateType: 'json',
		success: function(res){
			if (res.result == 0){
				//调用创建标签细节显示的div
				createHtmlNode(res.data, "关注");
			} else {
				alert("服务器繁忙,请稍后刷新重试");
			}
		}
	});
}

/*
 * @author zhangchengwei
 * 在的div中
 * */
function createHtmlNode(data, attentionText){
	if(data.length < 10){
		var oneTypeTagListContent = '抱歉,目前还没有标签';
		$("#showTagsMessageBodyTagContents").html("");
		for (var line = 0; line < data.length; line += 3){
			//创建行
			oneTypeTagListContent = 
				'<div class="showTagsMessage-body-tagContents-tagLine" id="showTagsMessageBodyTagContentsTagLine' +line+ '"></div>';
			//将数据显示到页面上
			$("#showTagsMessageBodyTagContents").append(oneTypeTagListContent);
			var OneTag = '';
			for (var k = line; ((k < (line + 3)) && (k < data.length)); k++){
				//创建3列标签
				var item = data[k];
				OneTag = 
					'<div class="showTagsMessage-body-tagContents-oneTag">'
					+	'<img class="showTagsMessage-body-tagContents-oneTag-logo" title="'+item.tagName+'" alt="'+item.tagName+'" src="'+item.tagLogoUrl+'"><br/>'
					+	'<a id="showTagsMessageBodyTagContentsTagAttentionButton'+k+'">'+attentionText+'</a>'
					+'</div>';
				//让列元素添加到行内
				$("#showTagsMessageBodyTagContentsTagLine" +line+ "").append(OneTag);
				//设置添加部分的各种属性
				$("#showTagsMessageBodyTagContentsTagAttentionButton"+k+"").attr("href", "javascript:attentionOrDetateTag('"+item.tagId+"', '#showTagsMessageBodyTagContentsTagAttentionButton"+k+"')");
			}
			$("#showTagsMessageBodyTagContentsTagLine" +line+ "").append('<div style="clear: both;"></div>');
		}
	} else {
		alert("标签超过九个,选择查看全部，未完待续");
	}
}

/*
 * @author zhangchengwei
 * 显示当前用户关注的全部标签
 */
function showOurTags(){
	var showOurTagsNode = $("#showTags");
	if (showOurTagsNode.width() == "0"){
		showOurTagsNode.animate({width:"360px"},"slow");
	} else {
		showOurTagsNode.animate({width:"0px"},"slow");
	}
}

/*
 * @author zhangchengwei
 * 删除标签,和取消关注一样
 * */
function deleteTag(tagId){
	$.ajax({
		type: "post",
		url: '../tag/ajaxDeleteFavorTag',
		data: {"tagId": tagId},
		dateType: "json",
		success: function(res){
			if (res){
				//对应左边标签栏的变化
				initIndexFavorTagList();
			} else {
				alert("系统繁忙,请稍后重试");
			}
		}
	});
}

/*
 * @author zhangchengwei 
 * 点击关注某个标签时的处理，设计3联动
 * */
function attentionTag(tagId){
	$.ajax({
		type: 'post',
		url: '../tag/ajaxAttentionTag',
		data: {
			"tagId": tagId
		},
		success: function(res){
			if(res){
				//对应左边标签栏的变化
				initIndexFavorTagList();
			} else {
				//考虑将所有错误提示信息统一显示在一个漂浮在最上层的div中
				alert("系统繁忙,请稍后刷新重试");
			}
		}
	});
}

//点击关注和取消关注的事件处理方法
function attentionOrDetateTag(tagId, id){
	var attentionIf = $(id).html();
	//对应a标签的字体内容变化
	if (attentionIf == "关注"){
		attentionTag(tagId);
		$(id).html("取消关注");
	} else if(attentionIf == "取消关注") {
		deleteTag(tagId);
		$(id).html("关注");
	}
}
